Примітиви OPENGL, основні прийоми побудови двовимірних об'єктів.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
Інші

Частина тексту файла

Лабораторна робота № 2. Примітиви OPENGL|, основні прийоми побудови|шикування| двовимірних об'єктів. Мета|ціль| роботи. Знайомство з|із| примітивами OPENGL|, призначеними для виведення крапок|точок|, ліній і багатокутників. Визначення кольору|цвіту| об'єктів. Різні способи замальовування|зафарбовувати| об'єктів. Необхідні теоретичні відомості. Для виконання роботи необхідно мати уявлення про основні принципи формування зображення на екрані ([7] – лекція 17), про моделювання об'єктів на плоскості|площині| ([7] – лекції 7, 8, 10); знати особливості представлення кольору|цвіту| в колірній моделі RGB| ([7] – лекція 4); розуміти сенс|зміст| терміну «антиелайзінг|» ([7] – лекція 6). Область виводу|висновку| в OPENGL| задається командою glViewPort|(0, 0, ClientWidth|, ClientHeight|) де перші два параметри задають положення лівого верхнього кута вікна виводу, параметри ClientWidth, ClientHeight визначають розмір вікна в екранних координатах. Центр отриманої області виводу має координати (0, 0). Координати змінюються в діапазоні [-1; 1] по кожній осі. Якщо при установці формату піксела був встановлений режим подвійної буферизації (прапор PFD_DOUBLEBUFFER), то зображення готується у позаекранному буфері, і необхідно забезпечити перезапис вмісту позаекранного буфера в основний. Зробити це можна командою BOOL| SwapBuffers|(HDC| hdc|); Всі зображення будуються з окремих примітивів, які описуються за допомогою набору вершин (Vertex). Примітивами OpenGl є крапки (одиночні вершини), лінії (пари вершин), трикутники (три вершини), чотирикутники (чотири вершини) і полігони (3 і більш за вершини). Командні дужки. Використання функцій glBegin| і glEnd|. Команди малювання полягають між командними дужками glBegin і glEnd. Командними дужками бібліотеки OpenGl є спеціальні функції (що не мають ніякого відношення до операторних дужок мов програмування). Помилка при використанні командних дужок не розпізнається компілятором, але може привести до непередбачуваних результатів роботи програми. Усередині командних дужок можуть знаходитися будь-які оператори мови і багато функцій OPENGL. Головне призначення командних дужок – завдання режиму (примітиву) для команд glVertex (вершина), що визначають координати вершин для малювання примітивів OPENGL. Команди, що встановлюють розмір крапки|точки|, товщину і типа|тип| лінії, включення|приєднання| і відключення режиму згладжування (антиелайзінг|) повинні стояти поза|зовні| командними дужками. Колір|цвіт| окремих вершин або примітивів може встановлюватися як поза|зовні| командними дужками, так і усередині|всередині| них. Для установки кольору|цвіту| використовується команда glColor3f|(0.3f, 0.5f, 0.1f) де колір|цвіт| формується як сума компонент червоного, зеленого і синього кольорів|цвіту| у вказаній пропорції. Значення компонент задаються у вигляді дійсних чисел в інтервалі [0; 1]. Компоненти кольору|цвіту| можуть бути задані і в цілочисельній формі, граничним значенням в цьому випадку буде|з'являтиметься| максимальне 8-бітове ціле без знаку, наприклад, білий колір|цвіт| буде записаний таким чином: glColor3i|(214748647, 214748647, 214748647). Проте|однак| переважно використовувати команду в речовій формі, оскільки OPENGL| зберігає дані саме в речовому форматі. Цифра 3 в назві команди означає число аргументів команди. Аргументи функції glBegin|. Аргументами функції glBegin можуть бути стандартні константи OpenGl, що визначають примітиви бібліотеки: GL_POINTS, GL_LINES, GL_LINE_STRIP, GL_LINE_LOOP, GL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_QUADS, GL_QUAD_STRIP, GL_POLYGON. У програмі імена констант мають бути записані саме так як це зроблено тут (все у верхньому регістрі). Включення|приєднання| і відключення режиму згладжування (антиелайзінг|). Для установки режиму згладжування перед командними дужками повинна стояти команда glEnable() з відповідною константою як аргумент, а після командних дужок – команда glDisable() також з відповідною константою. Вибір кон...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини